This invention relates generally to Artificial Intelligence (AI), and more specifically to planning systems capable of operating in a distributed processing environment.
Artificial intelligence, or AI, deals with the science of making machines with the intelligence of human beings. AI covers areas including cognition, understanding, learning, knowledge representation and searching. This invention touches on all of these aspects of AI.
The idea of making a machine with the intelligence of a human being has existed since at least the 1940's when the first computers were made. Many predictions have been made since then as to when an intelligent machine will be created. Most of these predicted dates have come and gone and there is still no evidence that an intelligent machine will be created in the near future.
The field of AI has gone through several periods when great breakthroughs were thought to be close at hand. However, each time, more barriers were found that frustrated the goal of creating an intelligent machine. These barriers included the exponential growth of the search space, consequent slowness in the search process, inability to generalize knowledge, and encoding and storing knowledge in a useful and efficient way. These problems apply to the AI field in general.
One subcategory of AI systems is planners. A planner can be thought of as a system for searching through a space of possible world states for a path to a particular world state (a goal state) which satisfies a number of externally or internally imposed criteria. An example would be a system for searching through the states of the familiar Rubic's Cube puzzle to find the sequence of operations to achieve the goal state (i.e. the solution). There are various strategies for solving these planning problems. Two of these strategies are the standard planners and the hierarchical planners.
A standard planner is a planner which develops plans at a single abstraction level, typically by developing a set of subgoals to be achieved in order to reach the main goal. A hierarchical planner is a planner which develops plans at several levels of abstraction. The plan at the highest level is a simplification, whereas at the lowest level it is a detailed plan, ready for execution.
Planners face barriers similar to the barriers other AI systems face and which were discussed above. These include an exponentially growing search space, consequent slowness in planning, inability to generalize knowledge from previously generated plans, and difficulty in encoding knowledge in a domain independent way.
Another problem faced in the field of AI and planners is the lack of techniques for producing programs which can control a number of activities in a distributed fashion. Distributed processing is when multiple processors or computers are connected together so that they can work on a common problem. Distributed processing has the advantage of greatly increasing the computing power of a system merely by adding additional processors. A technique that can utilize this increased computing power is a great advantage.
Therefore, a need exists for a new technique to overcome these problems in the AI and planning fields.